-- SPDX-License-Identifier: GPL-3.0-or-later

--------------------------------------------------
--Vup杀
--------------------------------------------------

--------------------------------------------------
--计划
--房间部分：
-- 增加安全直播模式
--游戏部分：
-- 魔改斗地主。
-- 绫濑光参考丰姿优化描述以及重写逻辑。
--底层部分
-- 技能失效后续看N神会不会提供便捷的入口，否则就要写一个function然后放在其他技能的on_cost里，相关标签名单可以通过萌的table.insert手段放入function里。
-- 新增技能种类：转换技（不是我们想要的那种，后续需要自己做了）
-- 录像！！！！
-- AI！！！！！
--UI部分
-- 推进UI扩展包
--------------------------------------------------

--------------------------------------------------
--通用马克
--以下技能存在跳过阶段无法作为on_cost一部分的方式，后续处理（芳仙、娇惰）
--根据是否装Vup杀卡牌包优化部分交互，避免差一个导致的报错。
--（待定）把目前所有的牌都做一个Vup杀版，美术资源什么和一些牌的不同就可以分开了，同时可以初始干掉一批牌。

--有个SkillCanTarget(对方角色, player, 技能名)的看不出来是什么，疑似与词条“发动此技能”有关，但和技能无效一样是通用内容）
--------------------------------------------------

--------------------------------------------------
-- “不受其他角色技能效果影响”【这个大概是player:canEffect(对方角色,技能名)】
-- ①效果中涉及你的技能,如果需要点人则不能点你，如果不需要点人则在发动后无事发生(如:不能对你发动“病缚”，你的牌被破坏后小柔可以发动“情柔”但是没效果)
-- ②如果技能效果没有被①阻止，那么在结算时直接对你无效:伤害、摸牌、给牌等
-- ③不能免疫转化/视为使用牌这类技能(如全能、贯袭)，因为不属于技能效果
-- ④“不可响应”类技能,如果技能里涉及了你则可以免疫，否则不影响（如三叹牌你不可响应，但是咒诀牌你可以响应，因为咒诀要比较手牌数涉及了你)
-- ⑤这个效果优先于“技能无效”【这个应该是skillnullify】
--------------------------------------------------

--------------------------------------------------
-- 角色特性制作方法：
-- 一个空壳锁定技addrelatedskill技能（只用来加描述）；一个隐藏锁定技（实际效果）
--------------------------------------------------

--------------------------------------------------
-- ((Fk.currentResponsePattern == nil and card.skill:canUse(Self)) or
-- (Fk.currentResponsePattern and Exppattern:Parse(Fk.currentResponsePattern):match(card)))
-- 这段代码的意思如下：如果不在响应（出牌阶段空闲时点），看这个牌能不能用（过滤闪、无懈等），在响应，看这个牌能不能响应
--------------------------------------------------

--------------------------------------------------
-- gamerule开发计划
-- 1. 以后需要做死人适配的话 gamestart标记需要增加复活时候重新刷上去的办法
--    还有一些需要加获得失去技能时候的加减标记适配
--------------------------------------------------

--------------------------------------------------
--描述里的加号都给老子别用全角！！！——Notify
--（旧Vup杀）转换技描述里带半角加号会转不动。
--------------------------------------------------

-- dofile "packages/vupslash/aux_skills.lua"
dofile "packages/VslTest/aux_skills.lua"

-- local role_old1 = require "packages.vupslash.role.old1"
-- local role_old1 = require "packages.vupslash.role.old2"
-- local role_old_change1 = require "packages.vupslash.role.old_change1"
-- local role_new1 = require "packages.vupslash.role.new1"

-- local mode_standard = require "packages/vupslash/v_gamemode/init"

-- local vupslash_cards = require "packages/vupslash/cards/vupslash_cards"

local role_old1 = require "packages.VslTest.role.old1"
local role_old2 = require "packages.VslTest.role.old2"
local role_old_change1 = require "packages.VslTest.role.old_change1"
local role_new1 = require "packages.VslTest.role.new1"
local guance1 = require "packages.VslTest.role.guance1"

local mode_standard = require "packages/VslTest/v_gamemode/init"

local vupslash_cards = require "packages/VslTest/cards/vupslash_cards"

return {
  role_old1,
  role_old2,
  role_old_change1,
  role_new1,
  guance1,

  mode_standard,

  vupslash_cards,
}